package com.sservice.service.service;

import com.sservice.base.entity.dto.BaseResult;
import com.sservice.base.entity.dto.ListResult;
import com.sservice.commonBusiness.vo.CategoryVo;
import com.sservice.model.entity.Commission;
import com.sservice.model.vo.CommissionVo;

import java.math.BigDecimal;
import java.util.List;

public interface ICommissionService {
    /**
     * 判断是否符合条件的佣金记录
     *
     * @param commission
     * @return
     */
    Commission existsBy(CommissionVo commission);

    void giveCommission(Integer saleId, BigDecimal value);

    /**
     * 佣金历史
     *
     * @param record
     * @return
     */
    BaseResult userHistoryRecord(CommissionVo record);

    /**
     * 用户提现佣金记录
     *
     * @param record
     * @return
     */
    ListResult userCommissionApply(CategoryVo record);

    /**
     * 列表
     *
     * @return
     */
    List<CommissionVo> list(CommissionVo record);

    /**
     * 统计数量
     *
     * @param record
     * @return
     */
    int count(CommissionVo record);

    /**
     * 保存
     *
     * @param commission
     * @return
     */
    Commission save(Commission commission);

    /**
     * 修改内容
     *
     * @param commission
     * @return
     */
    Commission update(Commission commission);

}
